This set of scenes each use a shader downloaded  from  ShaderToy.com
 as a background to a single performer.  Because  the  VGHD  software
uses different names for some of the shader inputs,  and  others  do 
not seem to be supported at all, it has been necessary to make a few 
modifications to the downloaded sources.

It has proved possible to adapt the great majority of the  ShaderToy
shaders by simply prefacing them with a common set of definitions to

   Equivalence the VGHD and ShaderToy inputs.

   Faking out iMouse and iChanneln references.

Because of the way in which TheEmu did the adaptions the full set of 
atadaption definitions has not always been used, but in retrospect it 
would have been simpler to just insert the same text at the start of
each shader even though this would often include much that  was  not
 used by a particular shader.  If  the  shader language supported the 
#include statement then the modifications could have been kept  down 
to a single line, #include VGHD_Shader_Toy_Adaptor.txt, but, as this 
is not supported, the text of the adaptor has to be inserted.  As an 
aid for anyone who wants to adapt more ShaderToy shaders a copy of
the full form of the adaptor is provided as

   Shaders = ShaderToy - 00 - VGHD_Shader_Toy_Adaptor.txt 

in which there are extensive explanatory comments.

In some cases the ShaderToy shaders do not assign any value to the 
component of gl_FragColor, the result being that the generated image
 is very noisy or completely invisible. Adding the single line

   gl_FragColor.a = 1.0; 

at the end of the shader will fix this problem.

There are some shaders at ShaderToy.com for which the this will  not 
work because they use 3D textures (texture cubes) or  functions  not 
covered by the common adaptor.  In a few cases (not the 3D ones) the
 shader can still be adapted by making minor changes to  the  source,
e.g. removing references to iChannelResolution. 

Occasionaly #defines have been used to allow shader parameters, such
 as maximum iteration counts,  to be easily changed in order to lower 
the resources used by a shader.  This is useful for scenes which use
 a lot of resources and stress the host system leading to judder when
 a scene is played. 

TheEmu can take no credit for any of these shaders,  that belongs to 
their original creators and the names used for the scenes do reflect 
this.

Please note,  a few of these shaders make heavy use of GPU resources
 which may result in jerky motion on "low end" machines. It may still
be possible to use them by reducing their requirements by  adjusting 
the values of control parameters in the .fsh files and in some cases
this has specificaly been allowed for,  but other than that you will 
have to change the body of the .fsh or simply not use the scene.